package com.soilflow.web.utils.easyexcel;

import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.GlobalConfiguration;
import com.alibaba.excel.metadata.data.ReadCellData;
import com.alibaba.excel.metadata.data.WriteCellData;
import com.alibaba.excel.metadata.property.ExcelContentProperty;

public class StatusConverter implements Converter<Integer> {
 
    //在java中默认是用 0 1 来标识的  所以是int
    @Override
    public Class supportJavaTypeKey() {return Integer.class;}
 
    // 在excel中是默认非默认 所以是string
    @Override
    public CellDataTypeEnum supportExcelTypeKey() {return CellDataTypeEnum.STRING;}
 
    //将excel的数据类型转为java数据类型
    @Override
    public Integer convertToJavaData(ReadCellData readCellData, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {
        String stringValue = readCellData.getStringValue();
        if (stringValue == null) {
            throw new RuntimeException("默认填写为空");
        }
        if ("停用".equals(stringValue)) {
            return 1;
        }
        return 0;
    }
 
    //将java的数据类型转为excel数据类型
    @Override
    public WriteCellData convertToExcelData(Integer s, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {
        if	(s == 0){
            return new WriteCellData("正常");
        }
        return new WriteCellData("停用");
    }
}